Skip to content

nginx: include security headers on error responses#1651

Merged
alxndrsn merged 44 commits intogetodk:nextfrom
alxndrsn:always-headers
Feb 18, 2026
Merged

nginx: include security headers on error responses#1651
alxndrsn merged 44 commits intogetodk:nextfrom
alxndrsn:always-headers

Conversation

@alxndrsn
Copy link
Contributor

@alxndrsn alxndrsn commented Feb 17, 2026

Checks for always flag on the following nginx headers:

  • Strict-Transport-Security
  • X-Content-Type-Options
  • X-Frame-Options
  • Content-Security-Policy
  • Content-Security-Policy-Report-Only

Closes #1527

What has been done to verify that this works as intended?

  • added a semgrep rule

Why is this the best possible solution? Were any other approaches considered?

  • a similar check could be achieved with grep. semgrep may be more versatile, and pulls in community-provided checks
  • unit tests could be added instead/as well

How does this change affect users? Describe intentional changes to behavior and behavior that could have accidentally been affected by code changes. In other words, what are the regression risks?

No effect.

Does this change require updates to documentation? If so, please file an issue here and include the link below.

No.

Before submitting this PR, please make sure you have:

  • branched off and targeted the next branch OR only changed documentation/infrastructure (master is stable and used in production)
  • verified that any code or assets from external sources are properly credited in comments or that everything is internally sourced

@alxndrsn alxndrsn marked this pull request as ready for review February 17, 2026 10:26
@matthew-white matthew-white linked an issue Feb 17, 2026 that may be closed by this pull request
@alxndrsn alxndrsn merged commit 541506a into getodk:next Feb 18, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use always for security headers

2 participants